<?php
/**
 * 部门
 * Created by PhpStorm.
 * User: echa
 * Date: 2018/1/25
 * Time: 11:54
 *
 */
namespace App\Services\Warehouse;


class DepartmentService extends  PublicService {

    public function __construct()
    {
        parent::__construct(Config('k3cloud.Department'));
    }


    /**
     *查看
     *1.formid：业务对象表单Id（必录）
    2.data：Json格式数据（详情参考Json格式数据）（必录）
    2.1.CreateOrgId：创建者组织，字符串类型（非必录）
    2.2.Number：单据编号，字符串类型（用编号查询必录）
    2.3.Id：表的主键Id（用Id查询时必录）
     *
     */
    public  function ViewDepartment($Number='',$Id=''){
        return $this->view($Number,$Id);
    }

    /**
     *单据列表查询
     * 1.data：Json格式数据（详情参考Json格式数据）（必录）
    1.1.FormId：业务对象表单Id（必录）
    1.2.FieldKeys：字段keys，字符串类型用逗号分隔，比如"key1,key2..."（必录）
    1.3.FilterString：过滤（非必录）  FNumber=''
    1.4.OrderString：排序字段（非必录）
    1.5.TopRowCount：总行数（非必录）
    1.6.StartRow：开始行（非必录）
    1.7.Limit：最大行数，不能超过2000（非必录）
     */
    public function ExecuteBillQueryDepartment($FieldKeys='',$FilterString='',$OrderString='',$TopRowCount=0,$StartRow=0,$Limit=20)
    {
        if (empty($FieldKeys)) {
            $FieldKeys='FNumber,FName,FDocumentStatus,FCreatorId,FCreateDate';
        }
        return $this->ExecuteBillQuery($FieldKeys,$FilterString,$OrderString,$TopRowCount,$StartRow,$Limit);
    }


    /**
     * 部门列表
     * 字段说明
     * FDEPTID  部门ID
     * FNumber  部门编号
     * FName  部门名称
     */
    public function ListExecuteBillQueryDepartment($StartRow=0,$OrderString='',$Limit=20){

        $FieldKeys='FDEPTID,FNumber,FName';
        $FilterString="FDocumentStatus='C' and FForbidStatus='A'";  //  已审核并且非禁用

        if(empty($OrderString)){
            $OrderString='FNumber desc';
        }

        $list=$this->ExecuteBillQuery($FieldKeys,$FilterString,$OrderString,0,$StartRow,$Limit);
        if($list){
            return $list;
        }else{
            return false;
        }
    }
}